Basic differences between Windows NT and Unix

Here's a list of basic differences you should be aware of during cross-platform development on Windows and Unix:

Difference | Windows | Unix
Datasystem: Pathnames Directory separator Relative declaration Absolute declaration | Concept of diskdrive conventions \ ..\dir1\src d:\dir1\dir2\src | File systems would be mounted from `/' / ../dir1/src /usr/lib/bin
Datasystems: Symbolic Links | unknown | available
Datasystems: Networkaccess | no standard NFS support uses LAN Manger for Networkaccess (de facto standard) Addressing of network resources via UNC | uses NFS for Networkaccess (de facto standard) no standard LAN Manager support no special addressing, all resources are added in the filesystem
Datasystem: Case Sensitivity | no | yes
Datasystem: valid datanames | FAT (Dos): no use of " & * + , / : ; < = > ? [ ] \ ^ | VFAT (Win95): no use of " & * / : < > ? \ ^ | NTFS (NT): no use of " * / : < > ? \ | | All symbols except of "/" can be used in the datanames
Datasystem: Data access | NTFS: access list FAT: read - only bit VFAT: read - only bit | Access control per UserID / GroupID
Order of data expansion | Objectfiles: .obj Libraries: .lib C source files: .c C++ source files: .cpp | Objectfiles: .o Libraries: .a C source files: .c C++ source files: .C
User ID's | Windows NT users "worldwide" unique User ID's Windows NT: User ID's are given by the system. Use of a User ID over the network is only possible with a Domain Controller (NT Server) There exists no suitable User ID concept under Windows 95 | Unix uses numerical values for User ID's and Group ID's ID's can be provided by the administrator User ID's can be used uniformly in the entire network

The Shell tool in SNiFF+ is a Unix shell which uses only Unix conventions.